---
title: yomo serve
---

# yomo serve

## Usage

Zipper can be started by the following command:

```bash
yomo serve -c config.yaml
```

the `config.yaml` is a YAML file, which contains the configuration of the Zipper:

```yaml filename="config.yaml"
### general ###
name: zipper-sgp
host: 0.0.0.0
port: 9000

### auth ###
auth:
  type: token
  token: <CREDENTIAL>

### cascading mesh ###
mesh:
  zipper-sgp:
    host: 1.1.1.1
    port: 9000
    credential: "token: <CREDENTIAL>"
  zipper-aus:
    host: 2.2.2.2
    port: 9000
    credential: "token: <CREDENTIAL>"
  zipper-usa:
    host: 3.3.3.3
    port: 9000
    auth: "token: <CREDENTIAL>"
  zipper-deu:
    host: 4.4.4.4
    port: 9000
    auth: "token: <CREDENTIAL>"
```

## Configuration

### General Config

- `name` - the name of the Zipper, it is used to identify the Zipper in the network.
- `host` - the IP address zipper listens on, default value is `0.0.0.0`, which means listen on all network interfaces, so the [Source][source] can connect over public Internet network, while the [StreamFunction][sfn] can connect over internal network, it will be cost effective when hosting on AWS etc.
- `port` - the port zipper listens on, default value is `9000`. Becareful, YoMo uses QUIC protocol, which is a UDP based protocol, so this port should be allow UDP ingress.

### Auth Config

- `auth` - provides the credential for the Zipper, it is used to authenticate the [Source][source] and [StreamFunction][sfn] when they connect to this Zipper.
  - `type` - the type of the credential, currently only `token` is supported.
  - `token` - the credential, it is a string.

### Mesh Config

- `mesh` - the list of mesh Zippers, the data will be transmitted between these Zippers when needed.
  - `name` - the name of the mesh Zipper, it is used to identify the Zipper in the network.
  - `host` - the IP address of the mesh Zipper.
  - `port` - the port of the mesh Zipper.
  - `credential` - the credential to connect to the mesh Zipper.

## Self-Hosting Zipper Service

- Tutorial: Deploy YoMo Zipper Service on Ubuntu 22.04
- Tutorial: Linux Server Tuning for QUIC
- Tutorial: Firewall Configuration for Server

[source]: ../api/source
[sfn]: ../api/sfn
